Pretty much like
dd4709bb2, BoxPointer's show() and hide()
functions will clash with Clutter.Actor's ones.
In addition to that, on a conceptual level, the current API
is not great, because calling boxPointer.hide() won't result
in boxPointer.actor.visible == false.
For these reasons, rename show() and hide() to open() and
close(). A compatibility layer will be added in a following
commit, warning about the usage of show() and hide().
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/153
// is completed so we can animate the icons after as we like without
// showing them while boxpointer is animating.
this._view.actor.opacity = 0;
- this._boxPointer.show(BoxPointer.PopupAnimation.FADE |
+ this._boxPointer.open(BoxPointer.PopupAnimation.FADE |
BoxPointer.PopupAnimation.SLIDE,
() => {
this._view.actor.opacity = 255;
this._grabHelper.ungrab({ actor: this.actor });
- this._boxPointer.hide(BoxPointer.PopupAnimation.FADE |
- BoxPointer.PopupAnimation.SLIDE);
+ this._boxPointer.close(BoxPointer.PopupAnimation.FADE |
+ BoxPointer.PopupAnimation.SLIDE);
this._isOpen = false;
this.emit('open-state-changed', false);
},
}
},
- show(animate, onComplete) {
+ open(animate, onComplete) {
let themeNode = this.actor.get_theme_node();
let rise = themeNode.get_length('-arrow-rise');
let animationTime = (animate & PopupAnimation.FULL) ? POPUP_ANIMATION_TIME : 0;
time: animationTime });
},
- hide(animate, onComplete) {
+ close(animate, onComplete) {
if (!this.actor.visible)
return;
this._updateVisibility();
});
panelService.connect('focus-out', ps => {
- this._boxPointer.hide(BoxPointer.PopupAnimation.NONE);
+ this._boxPointer.close(BoxPointer.PopupAnimation.NONE);
Main.keyboard.resetSuggestions();
});
},
if (isVisible) {
this._boxPointer.setPosition(Main.layoutManager.dummyCursor, 0);
- this._boxPointer.show(BoxPointer.PopupAnimation.NONE);
+ this._boxPointer.open(BoxPointer.PopupAnimation.NONE);
this._boxPointer.actor.raise_top();
} else {
- this._boxPointer.hide(BoxPointer.PopupAnimation.NONE);
+ this._boxPointer.close(BoxPointer.PopupAnimation.NONE);
}
},
},
_showSubkeys() {
- this._boxPointer.show(BoxPointer.PopupAnimation.FULL);
+ this._boxPointer.open(BoxPointer.PopupAnimation.FULL);
this._capturedEventId = global.stage.connect('captured-event',
this._onCapturedEvent.bind(this));
this._unmapId = this.keyButton.connect('notify::mapped', () => {
_hideSubkeys() {
if (this._boxPointer)
- this._boxPointer.hide(BoxPointer.PopupAnimation.FULL);
+ this._boxPointer.close(BoxPointer.PopupAnimation.FULL);
if (this._capturedEventId) {
global.stage.disconnect(this._capturedEventId);
this._capturedEventId = 0;
this.isOpen = true;
this._boxPointer.setPosition(this.sourceActor, this._arrowAlignment);
- this._boxPointer.show(animate);
+ this._boxPointer.open(animate);
this.actor.raise_top();
this._activeMenuItem.setActive(false);
if (this._boxPointer.actor.visible) {
- this._boxPointer.hide(animate, () => {
+ this._boxPointer.close(animate, () => {
this.emit('menu-closed');
});
}
let workspaceManager = global.workspace_manager;
let themeNode = this.get_theme_node();
- forWidth = themeNode.adjust_for_width(forWidth);
-
let spacing = themeNode.get_length('spacing');
let nWorkspaces = workspaceManager.n_workspaces;
let totalSpacing = (nWorkspaces - 1) * spacing;